/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.unesp.rc.locadora.beans;

import br.unesp.rc.locadora.utils.MySQLUtil;
import java.util.Date;
import javax.persistence.*;

/**
 *
 * @author aluno
 */
@Entity
@Table(name=MySQLUtil.TB_ITEMFATURA)
public class ItemFatura {

    private long idItemFatura;
    private float valor;
    private Date dataVencimento;
    private Date dataPagamento;
    
    /**
     * Este atributo representa o relacionamento 
     * bidirecional (*:1) de ItemFatura para Fatura
     */
    private Fatura fatura;

    public ItemFatura() {
    }

    public ItemFatura(long idItemFatura, float valor, Date dataVencimento, Date dataPagamento) {
        this.idItemFatura = idItemFatura;
        this.valor = valor;
        this.dataVencimento = dataVencimento;
        this.dataPagamento = dataPagamento;
    }

    /**
     * @return the idItemFatura
     */
    @Id
    @GeneratedValue
    @Column(name=MySQLUtil.COL_ITEMFATURA_ID)
    public long getIdItemFatura() {
        return idItemFatura;
    }

    /**
     * @param idItemFatura the idItemFatura to set
     */
    public void setIdItemFatura(long idItemFatura) {
        this.idItemFatura = idItemFatura;
    }

    /**
     * @return the valor
     */
    @Column(name=MySQLUtil.COL_ITEMFATURA_VALOR)
    public float getValor() {
        return valor;
    }

    /**
     * @param valor the valor to set
     */
    public void setValor(float valor) {
        this.valor = valor;
    }

    /**
     * @return the dataVencimento
     */
    @Column(name=MySQLUtil.COL_ITEMFATURA_DATAVENC)
    @Temporal(javax.persistence.TemporalType.DATE)
    public Date getDataVencimento() {
        return dataVencimento;
    }

    /**
     * @param dataVencimento the dataVencimento to set
     */
    public void setDataVencimento(Date dataVencimento) {
        this.dataVencimento = dataVencimento;
    }

    /**
     * @return the dataPagamento
     */
    @Column(name=MySQLUtil.COL_ITEMFATURA_DATAPAG)
    @Temporal(javax.persistence.TemporalType.DATE)
    public Date getDataPagamento() {
        return dataPagamento;
    }

    /**
     * @param dataPagamento the dataPagamento to set
     */
    public void setDataPagamento(Date dataPagamento) {
        this.dataPagamento = dataPagamento;
    }

    /**
     * @return the fatura
     */
    @OneToOne
    public Fatura getFatura() {
        return fatura;
    }

    /**
     * @param fatura the fatura to set
     */
    public void setFatura(Fatura fatura) {
        this.fatura = fatura;
    }
}
